package com.tjn.set_;

import java.util.Comparator;
import java.util.TreeSet;

/**
 * @author 陶镓妮
 * @version 1.0
 */
public class TreeSet_ {
    @SuppressWarnings("all")
    public static void main(String[] args) {
        //TreeSet最大的优点就是可以排序
        //TreeSet treeSet = new TreeSet();//无参构造器不能实现排序
        //如果要add一个对象，那么必须实现Comparable接口，并重写compare方法

        //使用有参构造器，传入一个匿名内部类Comparator,调用其compare方法
        TreeSet treeSet = new TreeSet(new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                //可以进行字符串的大小比较
                //return ((String)o1).compareTo((String)o2);

                //还可以使用不同方法如length()，按照长度大小来排序
                return ((String)o1).length() - ((String)o2).length();
                //此时我传入的数据中Jerry和Smith的长度是相等的，那么Smith就不会再添加进去
            }
        });

        treeSet.add("jerry");
        treeSet.add("tom");
        treeSet.add("smith");
        treeSet.add("mary");
        System.out.println(treeSet);
    }
}
